home *** CD-ROM | disk | FTP | other *** search
Makefile | 1993-02-04 | 3.4 KB | 185 lines | [TEXT/R*ch] |
- # where to install program
- DEST = /usr/local/bin
-
- # where to install library
- LIB_DEST = /usr/local/lib
-
- HDRS = defs.h
-
- # uncomment the next line if your system does not have strrchr()
- #RINDEX = -Dstrrchr=rindex
-
- # the name of the final executable
- PROGRAM = byacc
-
- LIBRARY = libby.a
-
- RANLIB = ranlib
- #RANLIB = true
-
- # set SIG_TYPE to the type of pointer signal() returns
- SIG_TYPE = void
- #SIG_TYPE = char
-
- CPPFLAGS = $(RINDEX) -DPROGRAM=\"$(PROGRAM)\" -DSIG_TYPE=$(SIG_TYPE)
-
- CFLAGS = -O $(CPPFLAGS)
-
- #CC = gcc -Wall
- CPP = /lib/cpp
-
- LDFLAGS =
-
- LIBS =
-
- LINKER = $(CC)
-
- MAKEFILE = Makefile
-
- OBJS = \
- closure.o \
- error.o \
- lalr.o \
- lr0.o \
- main.o \
- mkpar.o \
- output.o \
- reader.o \
- skeleton.o \
- symtab.o \
- verbose.o \
- warshall.o
-
- LIB_OBJS = yyerror.o \
- yymain.o
-
- PRINT = pr -f -l88
-
- SRCS = closure.c \
- error.c \
- lalr.c \
- lr0.c \
- main.c \
- mkpar.c \
- output.c \
- reader.c \
- skeleton.c \
- symtab.c \
- verbose.c \
- warshall.c
-
- all: $(PROGRAM) $(PROGRAM).man $(LIBRARY)
-
- $(LIBRARY): $(LIB_OBJS)
- ar rv $(LIBRARY) $(LIB_OBJS)
- $(RANLIB) $(LIBRARY)
-
- $(PROGRAM): $(OBJS) $(LIBS)
- @echo -n "Loading $(PROGRAM) ... "
- @$(LINKER) $(LDFLAGS) -o $(PROGRAM) $(OBJS) $(LIBS)
- @echo "done"
-
- cc_src:
- #load $(RINDEX) -DPROGRAM="$(PROGRAM)" -DSIG_TYPE=$(SIG_TYPE) \
- $(SRCS)
- #link
-
- clean:
- rm -f $(OBJS) $(LIB_OBJS) *~ core .purify* purify*
- rm -f $(MAKEFILE).bak
-
- clobber: clean
- rm -f $(PROGRAM) $(LIBRARY)
-
- depend:
- sed -n -e '1,/^### DO NOT DELETE THIS LINE/p' < $(MAKEFILE) \
- | sed -e '/^### DO NOT DELETE THIS LINE/d' > $(MAKEFILE).new
- echo "### DO NOT DELETE THIS LINE - make depend needs it" >> $(MAKEFILE).new
- echo >> $(MAKEFILE).new
- for fl in $(SRCS) $(DEBUG_SRCS) ; \
- do \
- $(CPP) $(CPPFLAGS) -M $$fl | grep -v ': /usr/include/' >> $(MAKEFILE).new ; \
- echo >> $(MAKEFILE).new ; \
- done
- mv $(MAKEFILE) $(MAKEFILE).bak
- mv $(MAKEFILE).new $(MAKEFILE)
-
- index:
- @ctags -wx $(HDRS) $(SRCS)
-
- install: $(PROGRAM) $(LIBRARY)
- @echo Installing $(PROGRAM) in $(DEST)
- @install -s $(PROGRAM) $(DEST)
- @echo Installing $(LIBRARY) in $(LIB_DEST)
- @cp $(LIBRARY) $(LIB_DEST)/$(LIBRARY)
- @$(RANLIB) $(LIB_DEST)/$(LIBRARY)
-
- library: $(LIBRARY)
-
- listing:
- @$(PRINT) Makefile $(HDRS) $(SRCS) | lpr
-
- lint:
- @lint $(CPPFLAGS) $(SRCS)
-
- $(PROGRAM).man: man.page $(MAKEFILE)
- sed -e "s/byacc/$(PROGRAM)/" \
- -e "s/ BYACC/ `echo $(PROGRAM) | tr '[a-z]' '[A-Z]'`/" \
- -e "s?LIB_DEST?$(LIB_DEST)?" \
- -e "s/LIBRARY/$(LIBRARY)/" \
- < man.page > $(PROGRAM).man
-
- program: $(PROGRAM)
-
- purify: $(OBJS) $(LIBS)
- @purify $(LINKER) $(LDFLAGS) -o $(PROGRAM) $(OBJS) $(LIBS)
-
- tags: $(HDRS) $(SRCS)
- @ctags $(HDRS) $(SRCS)
-
- tests: $(PROGRAM)
- -mkdir t
- cp test/*.y test/Makefile t
- (cd t; $(MAKE) PROGRAM=$(PROGRAM))
- diff -r test t
- rm -fr t
-
- ### DO NOT DELETE THIS LINE - make depend needs it
-
- closure.o: closure.c
- closure.o: ./defs.h
-
- error.o: error.c
- error.o: ./defs.h
-
- lalr.o: lalr.c
- lalr.o: ./defs.h
-
- lr0.o: lr0.c
- lr0.o: ./defs.h
-
- main.o: main.c
- main.o: ./defs.h
-
- mkpar.o: mkpar.c
- mkpar.o: ./defs.h
-
- output.o: output.c
- output.o: ./defs.h
-
- reader.o: reader.c
- reader.o: ./defs.h
-
- skeleton.o: skeleton.c
- skeleton.o: ./defs.h
-
- symtab.o: symtab.c
- symtab.o: ./defs.h
-
- verbose.o: verbose.c
- verbose.o: ./defs.h
-
- warshall.o: warshall.c
- warshall.o: ./defs.h
-
-